万卷网> 电子学会考级 >Python等级考试 > 2026年6月电子学会青少年软件编程(Python四级)等级考试试卷

2026年6月电子学会青少年软件编程(Python四级)等级考试试卷
客观题 四级 2026 2026-07-09 18:51:46 150

一、单选题

1.

一个人赶着鸭子,每经过一个村子,他卖去所赶鸭子的一半又一只,这样在经过了七个村子后,还剩两只鸭子,问他出发时共赶多少只鸭子。用递归函数F(n)求解,F为经过n个村子后鸭子的数量,n为第n个村子,则递归公式应该表示为?( )

A.

F(n)=(F(n+1)+1)*2

B.

F(n)=(F(n-1)+1)*2

C.

F(n)=(F(n+1)+2)*2

D.

F(n)=(F(n-1)+2)*2

2.

在Python程序中,想要使用math库中的sqrt函数,下列哪种导入方式是错误的?( )

A.

import math 然后使用math.sqrt(4)

B.

from math import sqrt 然后使用sqrt(4)

C.

import sqrt from math 然后使用sqrt(4)

D.

from math import * 然后使用sqrt(4)

3.

小李定义了一个函数def myfun():pass,其返回的值为?( )

A.

0

B.

出错不能运行

C.

空字符串

D.

None

4.

关于Python函数的描述,以下哪一项是正确的?( )

A.

函数定义时,必须使用return语句返回一个值

B.

函数内部定义的变量,在函数外部可以直接访问和修改

C.

使用lambda关键字定义的匿名函数,其函数体必须是一个表达式

D.

调用help()函数可以查看所有内置函数的源代码

5.

用递归方法计算列表 [a1, a2, ..., an] 中所有元素的乘积,边界条件(递归出口)最合适的描述应该是什么?( )

A.

当列表长度为0时,返回0

B.

当列表长度为1时,返回该元素

C.

当列表长度为2时,返回两元素之和

D.

当列表长度为0时,返回1

6.

已知递推公式 f(n) = f(n-1) + 2*n,且 f(1) = 2。请问 f(3) 的值是多少?( )

A.

4

B.

8

C.

12

D.

16

7.

编程时,如果只需要导入某第三方库中的某个成员,需要使用到以下哪个关键字?( )

A.

from

B.

as

C.

into

D.

inport

8.

以下程序是用什么算法思维来输出数列2,3,5,8,13,21,34?( )

a,b=1,1

对于 I 在范围内(3,10):

 c = a + b

 印刷(c)

 a = b

 b = c

A.

枚举

B.

解析

C.

递归

D.

递推

9.

运行以下Python代码,输出结果为?( )

def fun(x, y):
    x, y = y, x
    print(x, y)
fun(y=1, x=2)
A.

1 1

B.

1 2

C.

2 2

D.

2 1

10.

小明想定义一个计算圆面积的函数,其中圆周率pi使用默认值3.14,但允许调用时指定其它值。下列哪个函数定义是正确的?( )

A.

def area(r, pi=3.14): return pi * r * r

B.

def area(pi=3.14, r): return pi * r * r

C.

def area(r=1, pi): return pi * r * r

D.

def area(r, pi): return pi * r * r

11.

关于分治算法,表述不正确的项是?( )

A.

首先要将待解决的问题划分成若干规模较小的同类问题

B.

划分出的每个子问题都能找到较简单的求解方法

C.

合并,按原问题的要求,将子问题的解逐层合并构成原问题的解

D.

分治的思想与递归不同,因此能用分治方法解决的问题不能用递归的方法去实现

12.

关于全局变量和局部变量,正确的描述是?( )(2026.6四级)

A.

通俗来说,无缩进的变量都是全局变量

B.

函数体中,只能使用局部变量

C.

Python程序中,全局变量与局部变量不允许重名

D.

函数体中,只能通过实参传递的方式实现对全局变量数值的使用

13.

对于以下自定义函数,分别以myfunc(1,2,3)和myfunc(1,2)语句调用该函数,运行后的结果分别是?( ) def myfunc(a,b,c=2): print(a+b+c)

A.

出错、出错

B.

5、出错

C.

5、5

D.

6、5

14.

运行以下Python程序,出现的结果是?( )

def jd(a,b,c = 1):
    disc = b *b-4*a *c
    return disc
print(jd(1,3,5))
A.

出错

B.

-11

C.

None

D.

5

15.

在自定义函数中,如果发现局部变量与全局变量同名,程序运行会发生什么情况?( )

A.

程序会出现语法错,不能运行

B.

程序可以运行,局部变量与全局变量互不干扰

C.

会出现局部变量隐藏全局变量的值的情况

D.

不允许出现这种情况,应该采用参数传递的方法去解决问题

16.

二分查找又称折半查找,是一种应用于有序数列的高效查找算法。下列数列中适合二分查找算法的是?( )

A.

11 99 4 25 3 39

B.

43 71 78 81 6 55

C.

67 62 68 4 1 17

D.

85 78 59 53 19 18

17.

关于计算梯形面积的匿名函数的定义,以下哪一个语法格式是正确的?( )

A.

result = lambda a, b: (a + b) * h / 2

B.

result = lambda a, b, h: (a + b) * h / 2

C.

result = lambda a, b, h: (a + b) * h

D.

result = lambda a, b, h: return (a + b) * h / 2

18.

下列哪个Python函数调用会引发语法错误?( )

A.

func(1, 2, c=3)

B.

func(2, 3, a=1)

C.

func(1, b=2, c=3)

D.

func(1, 2, 3)

19.

对以下Python代码解释错误的是?( )

def f(n):
    s=1
    for i in range(1,n+1):
        s*=i
    return s
A.

程序正常运行时,函数f(n)的作用是求n的阶乘

B.

程序正常运行时,函数f(n)的作用是求n+1的阶乘

C.

s是局部变量

D.

range()函数是Python内置函数

20.

有5个人坐在一起,问第5个人多少岁?他说比第4个人大3岁,问第4个人,他说比第3个人大3岁,依次问下去,每个人都正好比前一个人大3岁。最后问第1个人,他说是10岁,请问第5个人多大?如果用递归函数age(n)解决这个问题,递归体应该表达为?( )

A.

age(n)=age(n-1)+3

B.

age(n)=age(n-1)-3

C.

age(n)=age(n+1)+3

D.

age(n)=age(n+1)-3

21.

以下Python代码的时间复杂度是?( )

for i in range( 1 ,10 ):  #外循环
    for j in range( i, 10  ):   #内循环
        print('%d*%d=%2d '%( i , j, i*j ), end='  ')  
    print()
A.

O(1)

B.

O(2)

C.

O(n)

D.

O(n2)

22.

递归函数的函数体内基本结构是下列哪种结构?( )

A.

for循环

B.

分支

C.

do-while

D.

顺序

23.

关于函数,正确的描述是?( )

A.

规范的函数设计都应该带有返回值

B.

函数体中,只要遇到return关键字,函数就结束

C.

函数体中,只要遇到break关键字,函数就结束

D.

函数的返回值只能是整型、浮点型、布尔型和字符串

24.

在一个两重嵌套函数中,如果通过内层函数需要修改外层函数中变量的值,处理的方法是?( )

A.

只能通过不定长参数传递来实现

B.

使用local关键字

C.

使用nonlocal关键字

D.

使用global关键字

25.

在有序列表 [2, 5, 8, 12, 16, 23, 38, 56, 72, 91] 中,用二分查找法寻找元素23,需要查找多少次?( )

A.

2

B.

3

C.

4

D.

5

二、判断题

1.

Python中,函数能够增强代码的可读性,提高代码的重复利用率。 ( )

A.正确 B.错误
2.

递归是通过重复执行一组语句或操作来遍历函数中的每个元素的过程。( )

A.正确 B.错误
3.

二分查找算法是分治算法思想的一个典型应用。( )

A.正确 B.错误
4.

使用from module import *方式导入模块中的所有功能,虽然方便,但可能会因为命名冲突导致程序出错。( )

A.正确 B.错误
5.

Python匿名函数使用关键字lambda,冒号之后的部分表示匿名函数的参数列表。( )

A.正确 B.错误
6.

递推是在定义一个函数时,出现自己调用自己。( )

A.正确 B.错误
7.

Python中自定义函数的函数体中必须要有return语句。( )

A.正确 B.错误
8.

程序调试时,输入一组测试数据,能输出正确的结果,说明程序没有问题。( )

A.正确 B.错误
9.

一个函数可以没有参数,也可以没有返回值。( )

A.正确 B.错误
10.

Python中,调用函数时,如果给设置了默认值的形参x再次赋值,则运行结果会使用新传入的实参值。( )

A.正确 B.错误
公众号
客服 反馈
顶部